/**
 * Copyright (C) 2011 Andrew C. Love (DNC) <dnc.app.sup@gmail.com>
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *         http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.dnc.cloak.framework.persistence.gen;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ReportDefinitionExample {
    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    protected String orderByClause;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    protected boolean distinct;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    protected List<Criteria> oredCriteria;

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public ReportDefinitionExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public String getOrderByClause() {
        return orderByClause;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public boolean isDistinct() {
        return distinct;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andReportIdIsNull() {
            addCriterion("REPORT_ID is null");
            return (Criteria) this;
        }

        public Criteria andReportIdIsNotNull() {
            addCriterion("REPORT_ID is not null");
            return (Criteria) this;
        }

        public Criteria andReportIdEqualTo(Integer value) {
            addCriterion("REPORT_ID =", value, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdNotEqualTo(Integer value) {
            addCriterion("REPORT_ID <>", value, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdGreaterThan(Integer value) {
            addCriterion("REPORT_ID >", value, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("REPORT_ID >=", value, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdLessThan(Integer value) {
            addCriterion("REPORT_ID <", value, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdLessThanOrEqualTo(Integer value) {
            addCriterion("REPORT_ID <=", value, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdIn(List<Integer> values) {
            addCriterion("REPORT_ID in", values, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdNotIn(List<Integer> values) {
            addCriterion("REPORT_ID not in", values, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdBetween(Integer value1, Integer value2) {
            addCriterion("REPORT_ID between", value1, value2, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportIdNotBetween(Integer value1, Integer value2) {
            addCriterion("REPORT_ID not between", value1, value2, "reportId");
            return (Criteria) this;
        }

        public Criteria andReportNameIsNull() {
            addCriterion("REPORT_NAME is null");
            return (Criteria) this;
        }

        public Criteria andReportNameIsNotNull() {
            addCriterion("REPORT_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andReportNameEqualTo(String value) {
            addCriterion("REPORT_NAME =", value, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameNotEqualTo(String value) {
            addCriterion("REPORT_NAME <>", value, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameGreaterThan(String value) {
            addCriterion("REPORT_NAME >", value, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_NAME >=", value, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameLessThan(String value) {
            addCriterion("REPORT_NAME <", value, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameLessThanOrEqualTo(String value) {
            addCriterion("REPORT_NAME <=", value, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameLike(String value) {
            addCriterion("REPORT_NAME like", value, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameNotLike(String value) {
            addCriterion("REPORT_NAME not like", value, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameIn(List<String> values) {
            addCriterion("REPORT_NAME in", values, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameNotIn(List<String> values) {
            addCriterion("REPORT_NAME not in", values, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameBetween(String value1, String value2) {
            addCriterion("REPORT_NAME between", value1, value2, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportNameNotBetween(String value1, String value2) {
            addCriterion("REPORT_NAME not between", value1, value2, "reportName");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionIsNull() {
            addCriterion("REPORT_DESCRIPTION is null");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionIsNotNull() {
            addCriterion("REPORT_DESCRIPTION is not null");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionEqualTo(String value) {
            addCriterion("REPORT_DESCRIPTION =", value, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionNotEqualTo(String value) {
            addCriterion("REPORT_DESCRIPTION <>", value, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionGreaterThan(String value) {
            addCriterion("REPORT_DESCRIPTION >", value, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_DESCRIPTION >=", value, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionLessThan(String value) {
            addCriterion("REPORT_DESCRIPTION <", value, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionLessThanOrEqualTo(String value) {
            addCriterion("REPORT_DESCRIPTION <=", value, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionLike(String value) {
            addCriterion("REPORT_DESCRIPTION like", value, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionNotLike(String value) {
            addCriterion("REPORT_DESCRIPTION not like", value, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionIn(List<String> values) {
            addCriterion("REPORT_DESCRIPTION in", values, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionNotIn(List<String> values) {
            addCriterion("REPORT_DESCRIPTION not in", values, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionBetween(String value1, String value2) {
            addCriterion("REPORT_DESCRIPTION between", value1, value2, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportDescriptionNotBetween(String value1, String value2) {
            addCriterion("REPORT_DESCRIPTION not between", value1, value2, "reportDescription");
            return (Criteria) this;
        }

        public Criteria andReportIconNameIsNull() {
            addCriterion("REPORT_ICON_NAME is null");
            return (Criteria) this;
        }

        public Criteria andReportIconNameIsNotNull() {
            addCriterion("REPORT_ICON_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andReportIconNameEqualTo(String value) {
            addCriterion("REPORT_ICON_NAME =", value, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameNotEqualTo(String value) {
            addCriterion("REPORT_ICON_NAME <>", value, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameGreaterThan(String value) {
            addCriterion("REPORT_ICON_NAME >", value, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_ICON_NAME >=", value, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameLessThan(String value) {
            addCriterion("REPORT_ICON_NAME <", value, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameLessThanOrEqualTo(String value) {
            addCriterion("REPORT_ICON_NAME <=", value, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameLike(String value) {
            addCriterion("REPORT_ICON_NAME like", value, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameNotLike(String value) {
            addCriterion("REPORT_ICON_NAME not like", value, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameIn(List<String> values) {
            addCriterion("REPORT_ICON_NAME in", values, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameNotIn(List<String> values) {
            addCriterion("REPORT_ICON_NAME not in", values, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameBetween(String value1, String value2) {
            addCriterion("REPORT_ICON_NAME between", value1, value2, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportIconNameNotBetween(String value1, String value2) {
            addCriterion("REPORT_ICON_NAME not between", value1, value2, "reportIconName");
            return (Criteria) this;
        }

        public Criteria andReportTemplateIsNull() {
            addCriterion("REPORT_TEMPLATE is null");
            return (Criteria) this;
        }

        public Criteria andReportTemplateIsNotNull() {
            addCriterion("REPORT_TEMPLATE is not null");
            return (Criteria) this;
        }

        public Criteria andReportTemplateEqualTo(String value) {
            addCriterion("REPORT_TEMPLATE =", value, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateNotEqualTo(String value) {
            addCriterion("REPORT_TEMPLATE <>", value, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateGreaterThan(String value) {
            addCriterion("REPORT_TEMPLATE >", value, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_TEMPLATE >=", value, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateLessThan(String value) {
            addCriterion("REPORT_TEMPLATE <", value, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateLessThanOrEqualTo(String value) {
            addCriterion("REPORT_TEMPLATE <=", value, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateLike(String value) {
            addCriterion("REPORT_TEMPLATE like", value, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateNotLike(String value) {
            addCriterion("REPORT_TEMPLATE not like", value, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateIn(List<String> values) {
            addCriterion("REPORT_TEMPLATE in", values, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateNotIn(List<String> values) {
            addCriterion("REPORT_TEMPLATE not in", values, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateBetween(String value1, String value2) {
            addCriterion("REPORT_TEMPLATE between", value1, value2, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportTemplateNotBetween(String value1, String value2) {
            addCriterion("REPORT_TEMPLATE not between", value1, value2, "reportTemplate");
            return (Criteria) this;
        }

        public Criteria andReportLocationIsNull() {
            addCriterion("REPORT_LOCATION is null");
            return (Criteria) this;
        }

        public Criteria andReportLocationIsNotNull() {
            addCriterion("REPORT_LOCATION is not null");
            return (Criteria) this;
        }

        public Criteria andReportLocationEqualTo(String value) {
            addCriterion("REPORT_LOCATION =", value, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationNotEqualTo(String value) {
            addCriterion("REPORT_LOCATION <>", value, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationGreaterThan(String value) {
            addCriterion("REPORT_LOCATION >", value, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_LOCATION >=", value, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationLessThan(String value) {
            addCriterion("REPORT_LOCATION <", value, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationLessThanOrEqualTo(String value) {
            addCriterion("REPORT_LOCATION <=", value, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationLike(String value) {
            addCriterion("REPORT_LOCATION like", value, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationNotLike(String value) {
            addCriterion("REPORT_LOCATION not like", value, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationIn(List<String> values) {
            addCriterion("REPORT_LOCATION in", values, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationNotIn(List<String> values) {
            addCriterion("REPORT_LOCATION not in", values, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationBetween(String value1, String value2) {
            addCriterion("REPORT_LOCATION between", value1, value2, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportLocationNotBetween(String value1, String value2) {
            addCriterion("REPORT_LOCATION not between", value1, value2, "reportLocation");
            return (Criteria) this;
        }

        public Criteria andReportTypeIsNull() {
            addCriterion("REPORT_TYPE is null");
            return (Criteria) this;
        }

        public Criteria andReportTypeIsNotNull() {
            addCriterion("REPORT_TYPE is not null");
            return (Criteria) this;
        }

        public Criteria andReportTypeEqualTo(String value) {
            addCriterion("REPORT_TYPE =", value, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeNotEqualTo(String value) {
            addCriterion("REPORT_TYPE <>", value, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeGreaterThan(String value) {
            addCriterion("REPORT_TYPE >", value, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_TYPE >=", value, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeLessThan(String value) {
            addCriterion("REPORT_TYPE <", value, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeLessThanOrEqualTo(String value) {
            addCriterion("REPORT_TYPE <=", value, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeLike(String value) {
            addCriterion("REPORT_TYPE like", value, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeNotLike(String value) {
            addCriterion("REPORT_TYPE not like", value, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeIn(List<String> values) {
            addCriterion("REPORT_TYPE in", values, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeNotIn(List<String> values) {
            addCriterion("REPORT_TYPE not in", values, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeBetween(String value1, String value2) {
            addCriterion("REPORT_TYPE between", value1, value2, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportTypeNotBetween(String value1, String value2) {
            addCriterion("REPORT_TYPE not between", value1, value2, "reportType");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsIsNull() {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS is null");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsIsNotNull() {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS is not null");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsEqualTo(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS =", value, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsNotEqualTo(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS <>", value, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsGreaterThan(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS >", value, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsGreaterThanOrEqualTo(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS >=", value, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsLessThan(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS <", value, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsLessThanOrEqualTo(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS <=", value, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsIn(List<Integer> values) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS in", values, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsNotIn(List<Integer> values) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS not in", values, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsBetween(Integer value1, Integer value2) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS between", value1, value2, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaColumnsNotBetween(Integer value1, Integer value2) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_COLUMNS not between", value1, value2, "reportNumberOfCriteriaColumns");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsIsNull() {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS is null");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsIsNotNull() {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS is not null");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsEqualTo(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS =", value, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsNotEqualTo(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS <>", value, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsGreaterThan(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS >", value, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsGreaterThanOrEqualTo(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS >=", value, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsLessThan(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS <", value, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsLessThanOrEqualTo(Integer value) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS <=", value, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsIn(List<Integer> values) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS in", values, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsNotIn(List<Integer> values) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS not in", values, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsBetween(Integer value1, Integer value2) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS between", value1, value2, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportNumberOfCriteriaRowsNotBetween(Integer value1, Integer value2) {
            addCriterion("REPORT_NUMBER_OF_CRITERIA_ROWS not between", value1, value2, "reportNumberOfCriteriaRows");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameIsNull() {
            addCriterion("REPORT_PROVIDER_CLASS_NAME is null");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameIsNotNull() {
            addCriterion("REPORT_PROVIDER_CLASS_NAME is not null");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameEqualTo(String value) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME =", value, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameNotEqualTo(String value) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME <>", value, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameGreaterThan(String value) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME >", value, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME >=", value, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameLessThan(String value) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME <", value, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameLessThanOrEqualTo(String value) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME <=", value, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameLike(String value) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME like", value, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameNotLike(String value) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME not like", value, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameIn(List<String> values) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME in", values, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameNotIn(List<String> values) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME not in", values, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameBetween(String value1, String value2) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME between", value1, value2, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andReportProviderClassNameNotBetween(String value1, String value2) {
            addCriterion("REPORT_PROVIDER_CLASS_NAME not between", value1, value2, "reportProviderClassName");
            return (Criteria) this;
        }

        public Criteria andGridIdIsNull() {
            addCriterion("GRID_ID is null");
            return (Criteria) this;
        }

        public Criteria andGridIdIsNotNull() {
            addCriterion("GRID_ID is not null");
            return (Criteria) this;
        }

        public Criteria andGridIdEqualTo(Integer value) {
            addCriterion("GRID_ID =", value, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdNotEqualTo(Integer value) {
            addCriterion("GRID_ID <>", value, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdGreaterThan(Integer value) {
            addCriterion("GRID_ID >", value, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("GRID_ID >=", value, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdLessThan(Integer value) {
            addCriterion("GRID_ID <", value, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdLessThanOrEqualTo(Integer value) {
            addCriterion("GRID_ID <=", value, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdIn(List<Integer> values) {
            addCriterion("GRID_ID in", values, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdNotIn(List<Integer> values) {
            addCriterion("GRID_ID not in", values, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdBetween(Integer value1, Integer value2) {
            addCriterion("GRID_ID between", value1, value2, "gridId");
            return (Criteria) this;
        }

        public Criteria andGridIdNotBetween(Integer value1, Integer value2) {
            addCriterion("GRID_ID not between", value1, value2, "gridId");
            return (Criteria) this;
        }

        public Criteria andLstUptUserIsNull() {
            addCriterion("LST_UPT_USER is null");
            return (Criteria) this;
        }

        public Criteria andLstUptUserIsNotNull() {
            addCriterion("LST_UPT_USER is not null");
            return (Criteria) this;
        }

        public Criteria andLstUptUserEqualTo(String value) {
            addCriterion("LST_UPT_USER =", value, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserNotEqualTo(String value) {
            addCriterion("LST_UPT_USER <>", value, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserGreaterThan(String value) {
            addCriterion("LST_UPT_USER >", value, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserGreaterThanOrEqualTo(String value) {
            addCriterion("LST_UPT_USER >=", value, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserLessThan(String value) {
            addCriterion("LST_UPT_USER <", value, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserLessThanOrEqualTo(String value) {
            addCriterion("LST_UPT_USER <=", value, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserLike(String value) {
            addCriterion("LST_UPT_USER like", value, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserNotLike(String value) {
            addCriterion("LST_UPT_USER not like", value, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserIn(List<String> values) {
            addCriterion("LST_UPT_USER in", values, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserNotIn(List<String> values) {
            addCriterion("LST_UPT_USER not in", values, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserBetween(String value1, String value2) {
            addCriterion("LST_UPT_USER between", value1, value2, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptUserNotBetween(String value1, String value2) {
            addCriterion("LST_UPT_USER not between", value1, value2, "lstUptUser");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeIsNull() {
            addCriterion("LST_UPT_TIME is null");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeIsNotNull() {
            addCriterion("LST_UPT_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeEqualTo(Date value) {
            addCriterion("LST_UPT_TIME =", value, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeNotEqualTo(Date value) {
            addCriterion("LST_UPT_TIME <>", value, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeGreaterThan(Date value) {
            addCriterion("LST_UPT_TIME >", value, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("LST_UPT_TIME >=", value, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeLessThan(Date value) {
            addCriterion("LST_UPT_TIME <", value, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeLessThanOrEqualTo(Date value) {
            addCriterion("LST_UPT_TIME <=", value, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeIn(List<Date> values) {
            addCriterion("LST_UPT_TIME in", values, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeNotIn(List<Date> values) {
            addCriterion("LST_UPT_TIME not in", values, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeBetween(Date value1, Date value2) {
            addCriterion("LST_UPT_TIME between", value1, value2, "lstUptTime");
            return (Criteria) this;
        }

        public Criteria andLstUptTimeNotBetween(Date value1, Date value2) {
            addCriterion("LST_UPT_TIME not between", value1, value2, "lstUptTime");
            return (Criteria) this;
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table report_definition
     *
     * @mbggenerated do_not_delete_during_merge Wed Feb 16 12:14:06 EST 2011
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table report_definition
     *
     * @mbggenerated Wed Feb 16 12:14:06 EST 2011
     */
    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value) {
            super();
            this.condition = condition;
            this.value = value;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.betweenValue = true;
        }
    }
}